
/**
 *  \file sdp_extern.h
 *
 *  Internal header file for SDP containing external declaration of globals.
 */

/*
 *  Copyright (C) 2013. Mindtree Ltd.
 *  All rights reserved.
 */

#ifndef _H_SDP_EXTERN_
#define _H_SDP_EXTERN_


/* --------------------------------- External Global variables */
/** Global Mutex for SDP */
BT_DEFINE_MUTEX_TYPE (extern, sdp_mutex)

#ifdef SDP_CLIENT

/**
 *  Client Connection Entities. This defines the
 *  maximum number of allowed client connections.
 *  User can tune this value.
 */
extern SDP_CE sdp_client_ce [];

/**
 *  User contexts are only required for the Client side
 *  to store the user context information and to block the
 *  multiple outstanding API requests.
 */
extern SDP_USER_CONTEXT sdp_context [];

#endif /* SDP_CLIENT */


#ifdef SDP_SERVER

/**
 *  Connection entity manages the connection details and
 *  connection status with required parameters that need
 *  to maintain for a SDP connection. The maximum allowed
 *  number of server connections depends upon the Maximum
 *  Remote Devices and is defined in BT_limits. User can
 *  tune this value.
 */
extern SDP_CE sdp_server_ce [];

#ifdef SDP_SERVER_HAVE_CB_IND_SUPPORT
/** SDP Server Application Indication Callback */
extern API_RESULT (* sdp_server_ind_cb )
                  (
                      UCHAR event_type,
                      UCHAR * event_data,
                      UCHAR event_datalen
                  );
#endif /* SDP_SERVER_HAVE_CB_IND_SUPPORT */

#endif /* SDP_SERVER */

#endif /* _H_SDP_EXTERN_ */


